From: Pranavkumar Sawargaonkar Date: Tue, 4 Feb 2014 06:05:32 +0000 (+0530) Subject: xen: arm: Remove determining reset specific values from dts for XGENE. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~5624 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success//%22http:/www.example.com/cgi/success/?a=commitdiff_plain;h=aa9332e9410b728c7b1ebf9b40e51622728703f6;p=xen.git xen: arm: Remove determining reset specific values from dts for XGENE. This patch removes reading reset specific values (address, size and mask) from dts and uses values defined in the code now. This is because currently xgene reset driver (submitted in linux) is going through a change (which is not yet accepted), this new driver has a new type of dts bindings for reset. Hence till linux driver comes to some conclusion, we will use hardcoded values instead of reading from dts so that xen code will not break due to the linux transition. Ref: http://lists.xen.org/archives/html/xen-devel/2014-01/msg02256.html http://www.gossamer-threads.com/lists/linux/kernel/1845585 Signed-off-by: Pranavkumar Sawargaonkar Signed-off-by: Anup Patel Acked-by: Ian Campbell --- diff --git a/xen/arch/arm/platforms/xgene-storm.c b/xen/arch/arm/platforms/xgene-storm.c index 4fc185ba54..af3b71c5c3 100644 --- a/xen/arch/arm/platforms/xgene-storm.c +++ b/xen/arch/arm/platforms/xgene-storm.c @@ -25,6 +25,11 @@ #include #include +/* XGENE RESET Specific defines */ +#define XGENE_RESET_ADDR 0x17000014UL +#define XGENE_RESET_SIZE 0x100 +#define XGENE_RESET_MASK 0x1 + /* Variables to save reset address of soc during platform initialization. */ static u64 reset_addr, reset_size; static u32 reset_mask; @@ -141,38 +146,12 @@ static void xgene_storm_reset(void) static int xgene_storm_init(void) { - static const struct dt_device_match reset_ids[] __initconst = - { - DT_MATCH_COMPATIBLE("apm,xgene-reboot"), - {}, - }; - struct dt_device_node *dev; - int res; - - dev = dt_find_matching_node(NULL, reset_ids); - if ( !dev ) - { - printk("XGENE: Unable to find a compatible reset node in the device tree"); - return 0; - } - - dt_device_set_used_by(dev, DOMID_XEN); - - /* Retrieve base address and size */ - res = dt_device_get_address(dev, 0, &reset_addr, &reset_size); - if ( res ) - { - printk("XGENE: Unable to retrieve the base address for reset\n"); - return 0; - } - - /* Get reset mask */ - res = dt_property_read_u32(dev, "mask", &reset_mask); - if ( !res ) - { - printk("XGENE: Unable to retrieve the reset mask\n"); - return 0; - } + /* TBD: Once Linux side device tree bindings are finalized retrieve + * these values from dts. + */ + reset_addr = XGENE_RESET_ADDR; + reset_size = XGENE_RESET_SIZE; + reset_mask = XGENE_RESET_MASK; reset_vals_valid = true; return 0;